package cn.iocoder.yudao.module.worker.controller.app.clerk.vo;

import cn.iocoder.yudao.module.worker.controller.admin.category.vo.CategoryRespVO;
import cn.iocoder.yudao.module.worker.dal.dataobject.clerklevel.ClerkLevelDO;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import com.alibaba.excel.annotation.*;

@Schema(description = "用户 APP - 店员信息 Response VO")
@Data
@ExcelIgnoreUnannotated
public class AppClerkRespVO {

    @Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "6165")
    @ExcelProperty("编号")
    private Long id;

    @Schema(description = "用户编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "15520")
    @ExcelProperty("用户编号")
    private Long userId;

    @Schema(description = "昵称", example = "赵六")
    @ExcelProperty("昵称")
    private String nickname;

    @Schema(description = "头像")
    @ExcelProperty("头像")
    private String avatar;

    @Schema(description = "性别")
    @ExcelProperty("性别")
    private String sex;

    @Schema(description = "年龄")
    @ExcelProperty("年龄")
    private Integer age;

    @Schema(description = "微信")
    @ExcelProperty("微信")
    private String weixin;

    @Schema(description = "手机号")
    @ExcelProperty("手机号")
    private String mobile;

    @Schema(description = "城市")
    @ExcelProperty("城市")
    private String city;

    @Schema(description = "相关经验")
    @ExcelProperty("相关经验")
    private String experience;

    @Schema(description = "录音")
    @ExcelProperty("录音")
    private String sound;

    @Schema(description = "音频格式", example = "2")
    @ExcelProperty("音频格式")
    private String soundType;

    @Schema(description = "音频时长")
    @ExcelProperty("音频时长")
    private BigDecimal soundTime;

    @Schema(description = "相册")
    @ExcelProperty("相册")
    private String albums;

    @Schema(description = "介绍")
    @ExcelProperty("介绍")
    private String intro;

    @Schema(description = "接单时间")
    @ExcelProperty("接单时间")
    private String onlineTime;

    @Schema(description = "在线状态", example = "2")
    @ExcelProperty("在线状态")
    private Boolean onlineStatus;

    @Schema(description = "分类id列表")
    @ExcelProperty("分类id列表")
    private String catIds;

    @Schema(description = "分类列表")
    @ExcelProperty("分类列表")
    private String catList;

    @Schema(description = "游戏id列表")
    @ExcelProperty("游戏id列表")
    private String gameIds;

    @Schema(description = "游戏列表")
    @ExcelProperty("游戏列表")
    private String gameList;

    @Schema(description = "商品id列表")
    @ExcelProperty("商品id列表")
    private String goodsIds;

    @Schema(description = "粉丝数量")
    @ExcelProperty("粉丝数量")
    private Integer fans;

    @Schema(description = "完成的订单数量")
    @ExcelProperty("完成的订单数量")
    private Integer orderNum;

    @Schema(description = "是否接盲盒订单", example = "2")
    @ExcelProperty("是否接盲盒订单")
    private Boolean blindStatus;

    @Schema(description = "店员等级id", example = "5684")
    @ExcelProperty("店员等级id")
    private Long workerClerkLevelId;

    @Schema(description = "店员等级")
    @ExcelProperty("店员等级")
    private Integer level;

    @Schema(description = "人气店员")
    @ExcelProperty("人气店员")
    private Boolean hot;

    @Schema(description = "首页推荐")
    @ExcelProperty("首页推荐")
    private Boolean home;

    @Schema(description = "技能数量")
    @ExcelProperty("技能数量")
    private Integer skillNum;

    @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("创建时间")
    private LocalDateTime createTime;

    /**
     *商品分类id数组
     */
    private String categoryIdArray;
    /**
     * 商品分类父级id数组
     */
    private String categoryParentIdArray;
    /**
     * 商品id数组
     */
    private String goodsIdArray;
    /**
     * 状态
     */
    private Integer status;

    private List<String> categoryNameList;

    private List<CategoryRespVO> goodsList;

    private ClerkLevelDO clerkLevel;

    private Boolean isFans;

    private Integer commentNum;

    private Integer trendNum;

}